using System;
using ns27;

namespace Triton.Game.Mapping
{
	[Attribute38("AdventureChooserButton")]
	public class AdventureChooserButton : ChooserButton
	{
		public AdventureDbId m_AdventureId => method_2<AdventureDbId>("m_AdventureId");

		public AdventureChooserButton(IntPtr address, string className)
			: base(address, className)
		{
		}

		public AdventureChooserButton(IntPtr address)
			: this(address, "AdventureChooserButton")
		{
		}

		public void SetAdventure(AdventureDbId id)
		{
			method_8("SetAdventure", id);
		}

		public AdventureDbId GetAdventure()
		{
			return method_11<AdventureDbId>("GetAdventure", Array.Empty<object>());
		}

		public AdventureChooserSubButton CreateSubButton(AdventureModeDbId id, AdventureSubDef subDef, string subButtonPrefab, bool useAsLastSelected)
		{
			return method_14<AdventureChooserSubButton>("CreateSubButton", new object[4] { id, subDef, subButtonPrefab, useAsLastSelected });
		}
	}
}
